package com.zmn.plat.business.interfaces.user;

import com.zmn.plat.model.entity.user.User;

/**
 * Creator: nowind
 * 
 * @since 2018/7/13 13:55
 */
public interface UserBService {

    /**
     * 重置默认密码
     * 
     * @param userId
     * @return 默认密码
     */
    String updatePasswordForReset(int userId);

    /**
     * 修改密码
     * 
     * @param userId
     * @param password
     * @param operatorType
     *            操作者类型,用户自己更改密码将更新用户信息的更新时间
     * @return
     */
    Integer updatePassword(int userId, String password, int operatorType);

    Integer updatePassword(User user);

    /**
     * 新用户注册
     * 
     * @param user
     * @param deviceCode
     *            设备码,为空则不写入注册设备
     * @param deviceType
     *            设备类型,只有iOS和android才写入注册设备
     * @param registLatlng
     *            注册地经纬度坐标
     * @return
     */
    Integer insert(User user, String deviceCode, int deviceType, String registLatlng);

    /**
     * 加密密码
     * 
     * @param password
     * @return
     */
    String generatePassword(String password);

}
